//匀速运动
function doMove(obj,attr,dir,target,endFn){
	clearInterval(obj.timer)																				//处理重复点击加快的问题
	dir = parseInt(getStyle(obj,attr)) < target ? dir : -dir;				//判断前进方向！！（*** 不要写在定时器内 ***）
		
	obj.timer = setInterval(function(){															//记得自定义属性obj.timer
		var nextPos = parseInt(getStyle(obj,attr)) + dir;
		if(nextPos > target && dir > 0 || nextPos < target && dir < 0){		//向左向右条件合并
			nextPos = target;																						//先赋值限速，因为是表达式所以不能用 == 、===
			//clearInterval(obj.timer);	因为需要有回调函数的关系，还是到目的地清除定时器好了//需要设置关闭定时器，如果不关闭的话，用alert(speed),到达终点还是会一直弹出800
		}
			
		obj.style[attr] = nextPos + 'px';							//记得px
		//nextPos == target && clearInterval(obj.timer);			//等价于等价于if条。如果speed == target就会执行后面的清除定时器
		if (nextPos == target) {									//** 千万千万不要写成=号 ***
			clearInterval(obj.timer);
			endFn && endFn();									//回调函数。等价于if条
		}
	},30)
}

function getStyle(obj, attr){
	return obj.currentStyle ? obj.currentStyle[attr] : getComputedStyle(obj)[attr];
}